<?php /// $Id: index.php,v 1.19.2.1 2008/05/02 05:09:41 jerome Exp $
	   /// Main interface window for messaging

	require('../config.php');
	require('lib.php');

	require_login(0, false);

	if (isguest()) {
		redirect($CFG->wwwroot);
	}

	if (empty($CFG->messaging)) {
		error("Messaging is disabled on this site");
	}

/// Optional variables that may be passed in
	$tab			= optional_param('tab', 'contacts'); // current tab - default to contacts
	$addcontact	 = optional_param('addcontact',	 0, PARAM_INT); // adding a contact
	$removecontact  = optional_param('removecontact',  0, PARAM_INT); // removing a contact
	$blockcontact   = optional_param('blockcontact',   0, PARAM_INT); // blocking a contact
	$unblockcontact = optional_param('unblockcontact', 0, PARAM_INT); // unblocking a contact
	$popup		  = optional_param('popup', false, PARAM_ALPHANUM);	// If set then starts a new popup window

/// Popup a window if required and quit (usually from external links).
	if ($popup) {
		print_header();
		echo '<script type="text/javascript">'."\n//<![CDATA[\n openpopup('/message/index.php', 'message', 'menubar=0,location=0,scrollbars,status,resizable,width=400,height=500', 0);\n//]]>\n</script>";
		redirect("$CFG->wwwroot/", '', 0);
		exit;
	}

/// Process any contact maintenance requests there may be
	if ($addcontact and confirm_sesskey()) {
		add_to_log(SITEID, 'message', 'add contact', 'history.php?user1='.$addcontact.'&amp;user2='.$USER->id, $addcontact);
		message_add_contact($addcontact);
	}
	if ($removecontact and confirm_sesskey()) {
		add_to_log(SITEID, 'message', 'remove contact', 'history.php?user1='.$removecontact.'&amp;user2='.$USER->id, $removecontact);
		message_remove_contact($removecontact);
	}
	if ($blockcontact and confirm_sesskey()) {
		add_to_log(SITEID, 'message', 'block contact', 'history.php?user1='.$blockcontact.'&amp;user2='.$USER->id, $blockcontact);
		message_block_contact($blockcontact);
	}
	if ($unblockcontact and confirm_sesskey()) {
		add_to_log(SITEID, 'message', 'unblock contact', 'history.php?user1='.$unblockcontact.'&amp;user2='.$USER->id, $unblockcontact);
		message_unblock_contact($unblockcontact);
	}


/// Header on this page
	if ($tab == 'contacts') {
		print_header(get_string('messages', 'message').' - '.format_string($SITE->fullname), '', '', '', 
				'<meta http-equiv="refresh" content="'. $CFG->message_contacts_refresh .'; url=index.php" />');
	} else {
		print_header(get_string('messages', 'message').' - '.format_string($SITE->fullname));
	}

	echo '<table cellspacing="2" cellpadding="2" border="0" width="95%" class="boxaligncenter">';  
	echo '<tr>';

/// Print out the tabs
	echo '<td>';
	$tabrow = array();
	$tabrow[] = new tabobject('contacts', $CFG->wwwroot.'/message/index.php?tab=contacts', 
							   get_string('contacts', 'message'));
	$tabrow[] = new tabobject('search', $CFG->wwwroot.'/message/index.php?tab=search', 
							   get_string('search', 'message'));
	$tabrow[] = new tabobject('settings', $CFG->wwwroot.'/message/index.php?tab=settings', 
							   get_string('settings', 'message'));
	$tabrows = array($tabrow);
		 
	print_tabs($tabrows, $tab); 
	
	echo '</td>';


	echo '</tr><tr>';

/// Print out contents of the tab
	echo '<td>';

/// a print function is associated with each tab
	$tabprintfunction = 'message_print_'.$tab;
	if (function_exists($tabprintfunction)) {
		$tabprintfunction();
	}

	echo '</td> </tr> </table>';
	print_footer('none');

?>
